package com.ssyt.yt1.day18;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

/**
 * Arrays:为数组而生的工具类<br/>
 * Collections：为集合而生的工具类
 * 
 * @author Administrator
 *
 */
public class CollectionsDemo {

	/**
	 * List排序
	 */
	public static void test1() {
		List<Integer> list = new ArrayList<>();
		list.add(11);
		list.add(2);
		list.add(1);
		list.add(3);
		Collections.sort(list, new Comparator<Integer>() {

			@Override
			public int compare(Integer o1, Integer o2) {
				return o2 - o1;
			}

		});
		System.out.println(list);
	}

	/**
	 * List按放入顺序反向输出
	 */
	public static void test2() {
		List<Integer> list = new ArrayList<>();
		list.add(11);
		list.add(2);
		list.add(1);
		list.add(3);
		Collections.reverse(list);
		System.out.println(list);
	}

	/**
	 * List洗牌
	 */
	public static void test3() {
		List<Integer> list = new ArrayList<>();
		list.add(11);
		list.add(2);
		list.add(1);
		list.add(3);
		Collections.shuffle(list);
		System.out.println(list);
		System.out.println(Collections.max(list));
		System.out.println(Collections.min(list));
	}

	/**
	 * unmodifiableList
	 */
	public static void test4() {
		List<Integer> list = new ArrayList<>();
		list.add(11);
		list.add(2);
		list.add(1);
		list.add(3);
		List<Integer> unmodifiableList = Collections.unmodifiableList(list);
		unmodifiableList.add(1);
		System.out.println(unmodifiableList);
	}

	public static void main(String[] args) {
		// test1();
		// test2();
		// test3();
		// test4();
	}
}
